﻿using Common.Communication;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Reflection;
using System.Text;
using System.Threading.Tasks;

namespace Common.Device.Interfaces
{
    public interface IDianZiFuZai : IDevice
    {
        /// <summary>
        /// 设置负载值
        /// </summary>
        /// <param name="mode">负责模式</param>
        /// <param name="value">消耗值</param>
        /// <returns></returns>
        Result<bool> SetOn(Enums.DianZiFuZaiEnum.DianZiFuZaiMode mode,double value);
        /// <summary>
        /// 关闭负载
        /// </summary>
        /// <returns></returns>
        Result<bool> SetOff();
        /// <summary>
        /// 读取负载设置值
        /// </summary>
        /// <param name="mode">负责模式</param>
        /// <returns></returns>
        Result<double> ReadSetValue(Enums.DianZiFuZaiEnum.DianZiFuZaiMode mode);
        /// <summary>
        /// 读取当前消耗值
        /// </summary>
        /// <param name="mode">负责模式</param>
        /// <returns></returns>
        Result<double> ReadCurrentValue(Enums.DianZiFuZaiEnum.DianZiFuZaiMode mode);
    }
}
